package com.xueshishasha.oa.model;

import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;


/**
 * @author xueshishasha
 * @version 1.0
 * @created 04-����-2010 19:13:14
 */

/**
 * @author xueshishasha
 *
 */
public class Employee implements Serializable{
	
	private static final long serialVersionUID = -4712803736686828842L;
	
	private String id;
	private String name;
	private String password;
	private String headImage;
	private Date birthday;
	private String sex;
	private String tel;
	private String phone;
	private String nation; //民族
	private String education; //教育程度

	private Boolean maritalStatus = false;//婚姻状况
	
	private String position;//职位
	private Date startingDate; //进公司时间
	private Integer loginCount; //登陆次数
	private Boolean online = false;  //是否在线
	
	private Role role; //角色 ，多对一
	private Department department; //部门 ，多对一
	
	private Set<AddressBook> addressBooks = new HashSet<AddressBook>(0); //通讯录,一对多 
	private Set<Note> notes = new HashSet<Note>(0);//便签，一对多
	
	private Set<CheckIn> checkIns = new HashSet<CheckIn>(0);//签到，一对多
	private Set<CheckOut> checkOuts = new HashSet<CheckOut>(0);//签退 ，一对多
	private Set<Leave> leaves = new HashSet<Leave>(0);//请假 ，一对多
	
	private Set<OverTime> overTimes = new HashSet<OverTime>(0);//请假 ，一对多
	private Set<LogBook> logBooks = new HashSet<LogBook>(0);//请假 ，一对多
	private Set<Message> messages = new HashSet<Message>(0);//请假 ，一对多
	private Set<Plan> plans = new HashSet<Plan>(0);//请假 ，一对多
	private Set<Schedule> schedules = new HashSet<Schedule>(0);//请假 ，一对多
	private Set<Task> tasks = new HashSet<Task>(0);//请假 ，一对多
	

	public Employee(){
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getTel() {
		return tel;
	}

	public void setTel(String tel) {
		this.tel = tel;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getNation() {
		return nation;
	}

	public void setNation(String nation) {
		this.nation = nation;
	}

	public String getEducation() {
		return education;
	}

	public void setEducation(String education) {
		this.education = education;
	}

	public boolean isMaritalStatus() {
		return maritalStatus;
	}

	public void setMaritalStatus(Boolean maritalStatus) {
		this.maritalStatus = maritalStatus==null?false:maritalStatus;
	}

	public Date getStartingDate() {
		return startingDate;
	}

	public void setStartingDate(Date startingDate) {
		this.startingDate = startingDate;
	}

	public Integer getLoginCount() {
		return loginCount;
	}

	public void setLoginCount(Integer loginCount) {
		this.loginCount = loginCount;
	}

	public Role getRole() {
		return role;
	}

	public void setRole(Role role) {
		this.role = role;
	}
	
	public Boolean isOnline() {
		return online;
	}
	
	public void setOnline(Boolean online) {
		this.online = online==null?false:online;
	}

	public Department getDepartment() {
		return department;
	}

	public void setDepartment(Department department) {
		this.department = department;
	}

	public Set<AddressBook> getAddressBooks() {
		return addressBooks;
	}

	public void setAddressBooks(Set<AddressBook> addressBooks) {
		this.addressBooks = addressBooks;
	}

	public String getPosition() {
		return position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	public Set<Note> getNotes() {
		return notes;
	}

	public void setNotes(Set<Note> notes) {
		this.notes = notes;
	}

	public Set<CheckIn> getCheckIns() {
		return checkIns;
	}

	public void setCheckIns(Set<CheckIn> checkIns) {
		this.checkIns = checkIns;
	}

	public Set<CheckOut> getCheckOuts() {
		return checkOuts;
	}

	public void setCheckOuts(Set<CheckOut> checkOuts) {
		this.checkOuts = checkOuts;
	}

	public Set<Leave> getLeaves() {
		return leaves;
	}

	public void setLeaves(Set<Leave> leaves) {
		this.leaves = leaves;
	}

	public Set<OverTime> getOverTimes() {
		return overTimes;
	}

	public void setOverTimes(Set<OverTime> overTimes) {
		this.overTimes = overTimes;
	}

	public Set<LogBook> getLogBooks() {
		return logBooks;
	}

	public void setLogBooks(Set<LogBook> logBooks) {
		this.logBooks = logBooks;
	}

	public Set<Message> getMessages() {
		return messages;
	}

	public void setMessages(Set<Message> messages) {
		this.messages = messages;
	}

	public Set<Plan> getPlans() {
		return plans;
	}

	public void setPlans(Set<Plan> plans) {
		this.plans = plans;
	}

	public Set<Schedule> getSchedules() {
		return schedules;
	}

	public void setSchedules(Set<Schedule> schedules) {
		this.schedules = schedules;
	}

	public Set<Task> getTasks() {
		return tasks;
	}

	public void setTasks(Set<Task> tasks) {
		this.tasks = tasks;
	}

	public String getHeadImage() {
		return headImage;
	}

	public void setHeadImage(String headImage) {
		this.headImage = headImage;
	}
}